home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 1998 August / PC Plus SuperCD 50a Issue 142 (CD142a) (August 1998).iso / trial / demon / TURNPIKE.1 / CLASSES.ZIP / sun / NET / WWW / MimeLauncher.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-04-14  |  1.8 KB  |  74 lines

  1. package sun.net.www;
  2.  
  3. import java.io.FileOutputStream;
  4. import java.io.IOException;
  5. import java.io.InputStream;
  6. import java.io.OutputStream;
  7. import java.net.URLConnection;
  8.  
  9. class MimeLauncher extends Thread {
  10.    // $FF: renamed from: uc java.net.URLConnection
  11.    URLConnection field_0;
  12.    // $FF: renamed from: m sun.net.www.MimeEntry
  13.    MimeEntry field_1;
  14.    String GenericTempTemplate;
  15.  
  16.    MimeLauncher(MimeEntry var1, URLConnection var2, String var3, String var4) {
  17.       super(var4);
  18.       this.field_1 = var1;
  19.       this.field_0 = var2;
  20.       this.GenericTempTemplate = var3;
  21.    }
  22.  
  23.    public void run() {
  24.       try {
  25.          InputStream var1 = this.field_0.getInputStream();
  26.          String var2 = this.field_1.command;
  27.          int var3 = 0;
  28.          boolean var4 = false;
  29.          String var5 = this.field_1.TempNameTemplate;
  30.          if (var5 == null) {
  31.             var5 = this.GenericTempTemplate;
  32.          }
  33.  
  34.          while((var3 = var5.indexOf("%s")) >= 0) {
  35.             var5 = var5.substring(0, var3) + System.currentTimeMillis() / 1000L + var5.substring(var3 + 2);
  36.          }
  37.  
  38.          try {
  39.             FileOutputStream var6 = new FileOutputStream(var5);
  40.             byte[] var7 = new byte[2048];
  41.  
  42.             int var8;
  43.             try {
  44.                while((var8 = var1.read(var7)) >= 0) {
  45.                   ((OutputStream)var6).write(var7, 0, var8);
  46.                }
  47.             } catch (IOException var9) {
  48.             }
  49.  
  50.             ((OutputStream)var6).close();
  51.          } catch (IOException var10) {
  52.          }
  53.  
  54.          var1.close();
  55.  
  56.          while((var3 = var2.indexOf("%t")) >= 0) {
  57.             var2 = var2.substring(0, var3) + this.field_0.getContentType() + var2.substring(var3 + 2);
  58.          }
  59.  
  60.          while((var3 = var2.indexOf("%s")) >= 0) {
  61.             var2 = var2.substring(0, var3) + var5 + var2.substring(var3 + 2);
  62.             var4 = true;
  63.          }
  64.  
  65.          if (!var4) {
  66.             var2 = var2 + " <" + var5;
  67.          }
  68.  
  69.          Runtime.getRuntime().exec(var2);
  70.       } catch (IOException var11) {
  71.       }
  72.    }
  73. }
  74.